| API Documentation |  |

- MAIN PAGE
- NAMESPACES
- CLASSES

Public Member Functions | List of all members
nkGraphics::System Class Referencefinal

Main interface with the component system. More...

Inheritance diagram for nkGraphics::System:

## Public Member Functions
| System () noexcept
| ~System ()
nkWinUi::System * | getUiSystem () const
Renderer * | getRenderer () const
ContentLoader * | getContentLoader () const
MeshDataLinkTracker * | getMeshDataLinkTracker () const
AsyncWorker * | getAsyncWorker () const
BlendStateManager * | getBlendStateManager () const
BufferManager * | getBufferManager () const
CameraManager * | getCameraManager () const
CompositorManager * | getCompositorManager () const
DepthStencilStateManager * | getDepthStencilStateManager () const
LogManager * | getLogManager () const
MeshManager * | getMeshManager () const
NodeManager * | getNodeManager () const
ProgramManager * | getProgramManager () const
RasterStateManager * | getRasterStateManager () const
RenderContextManager * | getRenderContextManager () const
RenderQueueManager * | getRenderQueueManager () const
ResourceManager * | getResourceManager () const
SamplerManager * | getSamplerManager () const
ShaderManager * | getShaderManager () const
TextureManager * | getTextureManager () const
ViewportManager * | getViewportManager () const
bool | getIsInitialized () const
bool | getHasRunToContinue () const
bool | getIsShuttingDown () const
void | setHasRunToContinue (bool value)
bool | initialize (const Configuration &config=Configuration())
void | run (RenderContext *context, std::function< void()> loopCallback=[]() {})
void | shutdown ()
bool | frame (RenderContext *context)
void | tickForNewFrame (RenderContext *context)

## Detailed Description

Main interface with the component system.

Used to initialize or shuts all of its sub parts, also used for framing or running.

## Constructor & Destructor Documentation

## ◆ System()

nkGraphics::System::System | ( |  | ) |
| noexcept

Constructor.

## ◆ ~System()

nkGraphics::System::~System | ( |  | ) |

Destructor.

## Member Function Documentation

## ◆ getUiSystem()

nkWinUi::System* nkGraphics::System::getUiSystem | ( |  | ) | const

Returns
  The nkWinUi system used within the current graphics system.

## ◆ getRenderer()

Renderer* nkGraphics::System::getRenderer | ( |  | ) | const

Returns
  The renderer used by the system.

## ◆ getContentLoader()

ContentLoader* nkGraphics::System::getContentLoader | ( |  | ) | const

Returns
  The linked content loader.

## ◆ getMeshDataLinkTracker()

MeshDataLinkTracker* nkGraphics::System::getMeshDataLinkTracker | ( |  | ) | const

Returns
  The linked mesh data link tracker.

## ◆ getAsyncWorker()

AsyncWorker* nkGraphics::System::getAsyncWorker | ( |  | ) | const

Returns
  The linked asynchronous worker.

## ◆ getBlendStateManager()

BlendStateManager* nkGraphics::System::getBlendStateManager | ( |  | ) | const

Returns
  The linked BlendState manager.

## ◆ getBufferManager()

BufferManager* nkGraphics::System::getBufferManager | ( |  | ) | const

Returns
  The linked Buffer manager.

## ◆ getCameraManager()

CameraManager* nkGraphics::System::getCameraManager | ( |  | ) | const

Returns
  The linked Camera manager.

## ◆ getCompositorManager()

CompositorManager* nkGraphics::System::getCompositorManager | ( |  | ) | const

Returns
  The linked Compositor maanger.

## ◆ getDepthStencilStateManager()

DepthStencilStateManager* nkGraphics::System::getDepthStencilStateManager | ( |  | ) | const

Returns
  The linked DepthStencilState manager.

## ◆ getLogManager()

LogManager* nkGraphics::System::getLogManager | ( |  | ) | const

Returns
  The linked log manager.

## ◆ getMeshManager()

MeshManager* nkGraphics::System::getMeshManager | ( |  | ) | const

Returns
  The linked Mesh manager.

## ◆ getNodeManager()

NodeManager* nkGraphics::System::getNodeManager | ( |  | ) | const

Returns
  The linked Node manager.

## ◆ getProgramManager()

ProgramManager* nkGraphics::System::getProgramManager | ( |  | ) | const

Returns
  The linked Program manager.

## ◆ getRasterStateManager()

RasterStateManager* nkGraphics::System::getRasterStateManager | ( |  | ) | const

Returns
  The linked RasterState manager.

## ◆ getRenderContextManager()

RenderContextManager* nkGraphics::System::getRenderContextManager | ( |  | ) | const

Returns
  The linked RenderContext manager.

## ◆ getRenderQueueManager()

RenderQueueManager* nkGraphics::System::getRenderQueueManager | ( |  | ) | const

Returns
  The linked RenderQueue manager.

## ◆ getResourceManager()

ResourceManager* nkGraphics::System::getResourceManager | ( |  | ) | const

Returns
  The linked resource manager.

## ◆ getSamplerManager()

SamplerManager* nkGraphics::System::getSamplerManager | ( |  | ) | const

Returns
  The linked Sampler manager.

## ◆ getShaderManager()

ShaderManager* nkGraphics::System::getShaderManager | ( |  | ) | const

Returns
  The linked Shader manager.

## ◆ getTextureManager()

TextureManager* nkGraphics::System::getTextureManager | ( |  | ) | const

Returns
  The linked Texture manager.

## ◆ getViewportManager()

ViewportManager* nkGraphics::System::getViewportManager | ( |  | ) | const

Returns
  The linked Viewport manager.

## ◆ getIsInitialized()

bool nkGraphics::System::getIsInitialized | ( |  | ) | const

Returns
  Whether the system is initialized (true) or not (false).

## ◆ getHasRunToContinue()

bool nkGraphics::System::getHasRunToContinue | ( |  | ) | const

Returns
  Whether the system has its running flag activated (true) or not (false). When initializing, the flag starts at true.

## ◆ getIsShuttingDown()

bool nkGraphics::System::getIsShuttingDown | ( |  | ) | const

Returns
  Whether the system is shutting down (true) or not (false).

## ◆ setHasRunToContinue()

void nkGraphics::System::setHasRunToContinue | ( | bool | value | ) |

Sets whether the run should proceed. Can be used to halt the run.

Parameters

  value | If the rendering should be stopped (true) or not (false).

## ◆ initialize()

bool nkGraphics::System::initialize | ( | const Configuration & | config = `Configuration()` | ) |

Initializes the component and all of its sub part. This implies launching the graphic system and initializing the renderer.

Parameters

  config | The configuration to use during initialization.

Returns
  If the initialization was a success (true) or not (false).

## ◆ run()

void nkGraphics::System::run | ( | RenderContext * | context,
|  | std::function< void()> | loopCallback = `[]() {}`
| ) |  |

Runs the component. This means entering an internal running loop. This loop can be sufficient for most use cases. It ticks inputs and rendering for a given context, before calling the potential callback provided. For more complex usage (multi windowing for instance), it is recommended to manually frame in a custom rendering loop.

Parameters

  context | The context to run with.
  loopCallback | A potential callback to call at each loop iteration.

## ◆ shutdown()

void nkGraphics::System::shutdown | ( |  | ) |

Shuts down the component. This frees all memory linked to it and ensure a clean leave.

## ◆ frame()

bool nkGraphics::System::frame | ( | RenderContext * | context | ) |

Frames the component, once. This will update input, and render, only once.

Parameters

  context | The context to render for.

Returns
  If the rendering was a success (true), or not (false).

## ◆ tickForNewFrame()

void nkGraphics::System::tickForNewFrame | ( | RenderContext * | context | ) |

Ticks the engine for a new frame, without rendering. This implies setting everything up for a clean rendering for a context, and checking how async work is going. Called automatically by a frame() call.

Parameters

  context | The context to tick for.

The documentation for this class was generated from the following file:

- Documentation/Headers/NilkinsGraphics/System.h